1. Field of the Invention
The present invention relates to a method for evaluating a presentation layer data unit, which contains application-oriented messages, coded according to a predefined coding protocol, for at least one application process running on a Q3 platform. The presentation layer data unit is received by the Q3platform via an association established on a Q3interface between the Q3 platform and a partner Q3platform, where:
the format of the data unit is checked for compliance with the predefined coding protocol;
the user data contained in the data unit is decoded (provided there are no errors in the coding);
the application-oriented messages are determined;
these messages are forwarded to the appropriate application process(es).
The invention equally relates a Q3 platform with at least one Q3 interface, on which associations with a partner Q3 platform can be established, with an application layer for application processes running on the Q3 platform, and a presentation machine to receive presentation layer data units via the associations. The data units contain application-oriented messages for at least one of the application processes, and these messages are coded according to a predefined coding protocol. The presentation machine, which evaluates these data units, is configured
to check the format of the data unit for compliance with the predefined coding protocol;
to decode the user data contained in the data unit (provided there are no errors in the coding);
to determine the application-oriented messages; and
to forward these messages to the appropriate application processes.
Q3 platforms and Q3 interfaces are used in the context of a so-called control network, in accordance with various standards specified by the International Telecommunications Union (ITU), and particularly the Recommendations M.3010 and M.3100. There follows a brief explanation of the main concepts of the control network, since these are required in order to understand the invention. Further information about this subject can be found in the aforementioned ITU Recommendations M.3010 and M.3100, and in ITU
2. Description of the Prior Art
Modern telecommunication networks generally comprise a large number of switching and transmission components. These are subsequently referred to as network elements (NE), in accordance with the aforementioned ITU recommendations. In order to provide comprehensive overall control of the network elements in a telecommunications network, with regard to operations, administration and maintenance (OAM), the Standards M.3010 and M.3100 propose an independent control network for processing information, and this is referred to as a telecommunications management network (TMN). Among other components, the TMN includes the network elements as terminal stations, and accesses the network elements via standardized interfaces and protocols. The TMN receives control-oriented reports from the network elements, which it controls. The control network includes an operations center, also known as an operations system or OS (of which there may be more than one), which allows centralized OAM control of the telecommunication network, as well as operation and monitoring of the control network by maintenance staff via terminals.
Switching centers in the telecommunication network are directly connected to the operations center via a so-called Q3 interface. The term Q3 platform refers to a network node that has one or more Q3 interfaces and is part of a control network. In particular, this includes the aforementioned switching centers with Q3 interfaces and the operations center of the control network. Another example of an interface type, which is not particularly important for the present invention, is the so-called Q2 interface. This is less complex, is intended for simpler network elements, and is used to connect network elements to the operations center indirectly via intermediate stations.
In accordance with ITU Recommendations X.710 and X.711, a common management information service (CMIS) is used at the Q3 interfaces in a control network, to exchange messages and commands relating to network control. A connection established between a control center and a network element is called an association. The operations center can use an association to send commands from the CMIS service, otherwise known as CMISE operations (common management information service element), to the network element. In this context, a single association can be used to transfer CMISE operations for a number of processes belonging to CMIS applications, which may be running concurrently on the same Q3 platform.
For the purposes of the association, and in particular the CMIS service, message transfers are based on the protocol layer architecture as defined in the OSI 7-layer model (cf. ITU Recommendation X.200) The present invention is only concerned with the top two layers of the OSI 7-layer model, namely layer 6 (the xe2x80x98presentation layerxe2x80x99) and layer 7 (the xe2x80x98application layerxe2x80x99). According to the OSI 7-layer model, the application layer contains the application-specific processes, in particular the CMISE operations, and relies on the functions of the presentation layer for this purpose. The presentation layer is used to generate a common coding for participating Q3 platforms on the basis of functions in layer 5, otherwise known as the xe2x80x98session layerxe2x80x99 which provides communication control functions. The present invention is not concerned with layers 1 to 5.
When transferring CMISE operations via an association with the partner platform, the operations are passed from the application layer to the presentation layer. A so-called PPM (presentation-layer protocol machine) is provided on each Q3 platform to perform the data transfer at the presentation layer. Messages are exchanged between PPMs on the Q3 platforms in the form of so-called PPDUs (presentation-layer protocol data units). The structure of PPDUs and the procedure for transferring messages based on PPDUs are specified by a predefined coding protocol. In accordance with the standards for the Q3 interface, the coding protocol is defined by the so-called xe2x80x98basic encoding rulesxe2x80x99 as per ITU Recommendation X.209, and by syntax based on the so-called ASN structure as per ITU Recommendation X.208. PPDUs received over the association are checked and decoded by the PPM in accordance with the coding protocol (provided there are no errors). The data for the application processes is then determined, and the application-oriented messages thus obtained are passed to the application layer. Here, they are forwarded to the appropriate application processes.
However, if the PPM detects a contravention of the predefined coding rules or deviation from the predefined syntax during the transfer and subsequent decoding of a PPDU, then the PPDU concerned is flagged as invalid. In this case, the specified standards stipulate that a termination report should be displayed at the application layer, and the association should be shut down by sending a so-called ARP-PPDU (abnormal release provider PPDU) to the PPM on the partner platform. In this context, it is of no importance to the presentation layer whether the deviation from coding rules or syntax in the PPDU relates to the parameters required for processing within the presentation layer, or only concerns user data (data in the application layer); e.g., payload data in CMISE commands. Consequently, even if an attribute of the user data in a single application-layer operation is xe2x80x9cincompatiblexe2x80x9d with the coding protocol, this will result in the whole association being terminated. In particular, this connection termination includes the termination of other CMIS application processes running over this association, loss of the messages and acknowledgments being transferred over the association, and delay in the transmission of further operations, since a new association has to be established for this purpose. The reason for the connection termination, and in particular the original operation on the Q3 interface or the parameter value that triggered the termination, cannot be determined from the reports that are exchanged in accordance with the standards, namely the termination report and the ARP-PPDU.
Therefore, a connection termination may be caused not only by problems in the application and/or presentation layer, but also by problems in the underlying layers of the protocol layer architecture; e.g., in equipment (as in layer 1, the transmission layer) or in a timeout circuit (as in layer 4, the transport layer, or in one of the layers below). General system problems can also occur, such as a temporary lack of resources. As a result, a connection termination generally gives rise to resource-intensive analyses. In particular, the Q3 platform that is xe2x80x9cactivexe2x80x9d in relation to the association (normally the operations center) must start queries for all of the terminated applications or operations, to clear faults and/or initiate a repetition as appropriate. Due to the possible loss of notifications, it is also necessary to read out and evaluate log files.
The aim of the present invention is xe2x80x98thereforexe2x80x99 to demonstrate a way to avoid termination of the association concerned in the case of a decoding problem relating to application data in the presentation layer, and to allow signaling to take place relating to the unsatisfactory parameters. At the same time, this invention should be interoperable with the aforementioned ITU standards, and in particular Recommendations X.710 and X.711 relating to the CMIS service, where it is assumed that compatible message transfer is still possible with standard-compliant Q3 platforms.
Such aim is achieved by a method for evaluating a presentation layer data unit, which contains application-oriented messages, coded according to a predefined coding protocol, for at least one application process running on a Q3 platform, wherein the presentation layer data unit is received by the Q3 platform via an association established on a Q3 interface between the Q3 platform and a partner Q3 platform, and wherein the format of the data unit is checked for compliance with the predefined coding protocol, the user data contained in the data unit is decoded if there are no errors in the coding, the application-oriented messages are determined, and the messages are forwarded to the appropriate application processes.
According to the present invention, if an error concerning the user data is detected in the coding, then the evaluation is terminated and a corresponding error report is sent to the application process concerned. This application process then generates an error response to the coding error in the form of an application error message, and sends it to the partner Q3 platform.
With the type of error handling in this solution, it is only necessary to terminate an association (as stipulated in ITU Recommendation X.226) ax if the PPDU as such is not xe2x80x9cproperly formedxe2x80x9d; i.e., parameters essential to the presentation layer as such cannot be correctly determined in the received data unit. Otherwise, the application-oriented parameters can be identified and decoding problems can only occur in parts of the application processes, in which case error handling at the application level initiates the appropriate remedy for the error that has been detected. This significantly simplifies the task of error diagnosis on both of the Q3 platforms involved.
The result is clearly beneficial, since it prevents termination of the association over which the invalid data unit was transferred, and prevents the message intended to shut it down; e.g., the aforementioned ARP-PPDU.
The above aim is likewise achieved by a Q3 platform with at least one Q3 interface, on which associations with the partner Q3 platform can be established, with an application layer for application processes running on the Q3 platform, and a presentation machine to receive presentation layer data units via the associations, wherein the data units contain application-oriented messages for at least one of the application processes, and these messages are coded according to a predefined coding protocol, and wherein the presentation machine is configured so as to check the format of the data unit for compliance with the predefined coding protocol, to decode the user data contained in the data unit if there are no errors in the coding, to determine the application-oriented messages, and to forward the messages to the appropriate application processes.
The above aim is likewise achieved by a Q3 platform of the type defined at the outset. The presentation machine is configured to terminate the evaluation in the event of an error in the coding of the user data in a data unit, and forward this error to the application layer. As a consequence of an error report relating to a user-data coding error in a presentation-layer data unit, the application layer is configured to generate an error response pointing out the coding error, in the form of an application error message from the application process concerned, and send it to the partner Q3 platform.
In a beneficial implementation of the present invention, which facilitates detection of the error, if the data unit concerns the creation of a data object, and a coding error is discovered relating to the attribute list of the data object to be created, then an error message is generated and sent, in which an invalid attribute value is reported and a reference to the incorrect attribute is included.
It is likewise beneficial pursuant to an embodiment of the present invention if the data unit concerns the modification of data objects and/or attributes, and a coding error is discovered relating to the list of modifications, to generate and send an error message, in which the non-feasibility of at least one modification is reported, and the message parts relating to this/these modification(s) are identified accordingly.
It is likewise beneficial, pursuant to another embodiment of the present invention if a coding error in the data unit is discovered relating to an application parameter in a filter operation, to generate and send an error message, in which an invalid filter operation is reported.
It is likewise beneficial, pursuant to a further embodiment of the present invention if the data unit concerns the execution of at least one action by an application process, and a coding error is discovered relating to the information for the action(s) to be executed, to generate and send an error message, in which an invalid attribute value is reported, and a reference to the incorrect information and/or its type is included.
It is also advantageous, pursuant to yet another embodiment of the present invention in the case of a coding error relating to several items of application data, if an error message is generated and sent, which reports the use of a parameter that has not been defined for the application process with reference to the data unit.